package com.taskmanager.entity;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.time.LocalDate;
import java.time.LocalDateTime;

/**
 * 任务实体类
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
public class Task {
    
    /**
     * 任务ID
     */
    private Long taskId;
    
    /**
     * 用户ID
     */
    private Long userId;
    
    /**
     * 分类ID
     */
    private Long categoryId;
    
    /**
     * 任务标题
     */
    private String title;
    
    /**
     * 任务描述
     */
    private String description;
    
    /**
     * 优先级：LOW, MEDIUM, HIGH
     */
    private String priority;
    
    /**
     * 状态：TODO, IN_PROGRESS, COMPLETED
     */
    private String status;
    
    /**
     * 截止日期
     */
    private LocalDate dueDate;
    
    /**
     * 总计时时长（秒）
     */
    private Integer totalTime;
    
    /**
     * 创建时间
     */
    private LocalDateTime createdAt;
    
    /**
     * 更新时间
     */
    private LocalDateTime updatedAt;
    
    /**
     * 分类名称（非数据库字段，用于查询结果）
     */
    private String categoryName;
    
    /**
     * 分类颜色（非数据库字段，用于查询结果）
     */
    private String categoryColor;
}
